 #ifndef __LSDINPRO_H__
#define __LSDINPRO_H__
#include "main.h"
#include "LsdEvent.h"
#define BASETIME  1   // 1000ms

//检测类
#define START_KEEP		(3*BASETIME)
#define END_KEEP		(3*BASETIME)

#define CNT_1S_KEEP		  (1*BASETIME)
#define CNT_2S_KEEP		  (2*BASETIME)
#define CNT_3S_KEEP		  (3*BASETIME)
#define CNT_4S_KEEP		  (4*BASETIME)
#define CNT_5S_KEEP		  (5*BASETIME)
#define CNT_10S_KEEP		(10*BASETIME)
#define CNT_15S_KEEP		(15*BASETIME)
#define CNT_30S_KEEP		(30*BASETIME)
#define CNT_60S_KEEP		(60*BASETIME)
#define CNT_300S_KEEP		(300*BASETIME)
//一键排空类
#define LET_OUT_DELAY_CNT 			(2*BASETIME)  //将延迟10s改为2s
#define LET_OUT_20S_DELAY_CNT		(20*BASETIME)  //将延迟10s改为2s


//热罐补水 及加热处理
#define HEAT_1MIN_CNT  						(60*BASETIME)


#define HEAT_REPLEN_WATER_20S_CNT (20*BASETIME)

#define HEAT_REWATER_5S_CNT 				(5*BASETIME)	//步进补水的时间  畅饮A7是15s  这里是8s 试用下
#if (QIANG_YING_DEVICE == 1)
#define HEAT_RE_TEMP  							3   				//重新加热温度的差值
#define HEAT_RE_WATER  							4   				//热罐重新补水温度的差值
#else
#define HEAT_RE_TEMP  							5   				//重新加热温度的差值
#define HEAT_RE_WATER  							6   				//热罐重新补水温度的差值

#endif
#define HEAT_RE_TEMP_A8  						5   				//重新加热温度的差值
#define HEAT_RE_WATER_A8  					6   				//热罐重新补水温度的差值

#define COOL_RE_TEMP  							3   				//重新制冷温度的差值
#define COOL_MIX_TEMP  							(2.1f)   		//制冷最低温度（4.8）
//#if TEST_MODE 
//#define MAKEWATER_TIME_10MIN_CNT (MAKEWATER_TIME_MIN_CNT*60*3)  //1s为单位 累计制水10分钟
//#define MAKEWATER_TIME_180MIN_CNT (MAKEWATER_TIME_MIN_CNT*60*6)  //1s为单位 累计制水3小时制水异常
//#else
#define MAKEWATER_TIME_MIN_CNT 						(1*BASETIME) //也就是1s
#define MAKEWATER_TIME_10MIN_CNT 					(MAKEWATER_TIME_MIN_CNT*60*60)  //1s为单位 累计制水60分钟  //改成60min脉冲冲洗一次，这里已经把值改过 20240118
#define MAKEWATER_TIME_120MIN_CNT 				(MAKEWATER_TIME_MIN_CNT*60*120)  //1s为单位 累计制水2小时制水异常
#define MAKEWATER_TIME_13S_CNT 						(MAKEWATER_TIME_MIN_CNT*13)  
#define HIGHWATER_DOWN_TIME_3MIN_CNT 			(MAKEWATER_TIME_MIN_CNT*60*3)   //3MIN 
#define HIGHWATER_DOWN_TIME_30MIN_CNT 		(MAKEWATER_TIME_MIN_CNT*60*30)   //30MIN 

#define SPEED_HEAT_10S_CNT 								(10*BASETIME)	//速热关闭后延迟10s 后才能开启加热

//#endif

//水检自检
#define PURE_FULL_WATER_5S_CNT			 (5*BASETIME)   	//5秒  纯水水满时间

#define PURE_RE_WATER_5MIN_CNT			 (60*5*BASETIME)   	//5分钟  纯水补水


#define HEAT_AUTO_CHECK_INWATER 		 (60*10*BASETIME)   //10分钟  热罐进水电磁阀开启时间
#define HEAT_RE_WATER_20MIN_CNT			 (60*20*BASETIME)   //20分钟 补热罐超时告警
#define COOL_RE_WATER_5MIN_CNT			 (60*5*BASETIME)   	//5分钟  补冷罐超时告警
#define HEAT_COOL_RUN_50MIN_CNT			 (60*50*BASETIME)   //50分钟 制热冷罐超时告警


//俄罗斯水检 缩写RUS
#define CHECK_RUS_10_MIN					 	(60*10*BASETIME)		
#define CHECK_RUS_20_MIN					 	(60*20*BASETIME)
#define CHECK_RUS_80_MIN					 	(60*80*BASETIME)	//1.2h
//水检结束
#define OPEN_CLEAN_CNT  						 (60*10*BASETIME)   //10分钟  热罐和进水阀打开用于工程抽水


void OnTaskInputCallBack(TypeEventFunPara *para);
extern uint8_t OnGetFirstHeatStatus(void);
extern uint8_t OnHeatReplenWaterStatus(void); //热罐补水是否完成
extern uint8_t OnGetWaterLow(void);//读取纯水箱低液位

extern uint8_t OnReadHighSwitchStatus(void); //高压开关状态

#endif


